home *** CD-ROM | disk | FTP | other *** search
Makefile | 1998-08-12 | 5.4 KB | 189 lines |
- #! smake
- #
- # Copyright (c) Mark J. Kilgard, 1995.
- #
- include $(ROOT)/usr/include/make/commondefs
-
- # NOTE: In my GLUT development tree, many of the C source files for
- # GLUT are generated. For this reason, "make full_clobber" will remove
- # these generated C files, while "make clobber" will not.
-
- TOP = ../..
-
- TARGETS = libglut.a
-
- LN = ln -s
- MV = mv
- RM = -rm -rf
-
- HDRS = glutint.h glutstroke.h layerutil.h glutbitmap.h
-
- SRCS = \
- glut_bitmap.c \
- glut_bwidth.c \
- glut_cindex.c \
- glut_cmap.c \
- glut_cursor.c \
- glut_dials.c \
- glut_dstr.c \
- glut_event.c \
- glut_ext.c \
- glut_fullscrn.c \
- glut_gamemode.c \
- glut_get.c \
- glut_glxext.c \
- glut_init.c \
- glut_input.c \
- glut_joy.c \
- glut_key.c \
- glut_keyctrl.c \
- glut_keyup.c \
- glut_menu.c \
- glut_menu2.c \
- glut_mesa.c \
- glut_modifier.c \
- glut_overlay.c \
- glut_shapes.c \
- glut_space.c \
- glut_stroke.c \
- glut_swap.c \
- glut_swidth.c \
- glut_tablet.c \
- glut_teapot.c \
- glut_util.c \
- glut_vidresize.c \
- glut_warp.c \
- glut_win.c \
- glut_winmisc.c \
- layerutil.c
-
- SRCSSEMIGENS = \
- glut_8x13.c \
- glut_9x15.c \
- glut_hel10.c \
- glut_hel12.c \
- glut_hel18.c \
- glut_mroman.c \
- glut_roman.c \
- glut_tr10.c \
- glut_tr24.c
-
- OBJS = $(SRCS:.c=.o) $(SRCSSEMIGENS:.c=.o)
- OTHERGENS = y.tab.c y.tab.h strokegen.c strokegen.h strokelex.c
- OTHERSRCS = strokegen.y strokelex.l stroke.h
- FONTS = Roman.stroke MonoRoman.stroke
-
- # Uncomment the LCDEFS line below if you want to build a version of
- # libglut.a that avoids using the SGI "fast atoms" optimization
- # introduced in IRIX 6.3. This optimization eliminates serveral X server
- # round-trips. If you are building libglut.a on an IRIX 6.3 or later
- # machine and want a chance (no guarantees) that GLUT executables built
- # against your libglut.a will work on IRIX 6.2 machines, uncomment out
- # the LCDEFS line below. Otherwise, you'll get a run-time message about
- # "attempted access to unresolvable symbol in XXX: _XSGIFastInternAtom"
- #LCDEFS = -DNO_FAST_ATOMS
-
- LCOPTS = -I$(TOP)/include -fullwarn
- LWOFF = ,813,852,827,826
- LDIRT = *~ $(OTHERGENS) strokegen *.bak hardcopy glutsrc.ps capturexfont *.pure dstr dstr.c *.gen
-
- default: $(TARGETS)
-
- sinclude ObjectType.mk
-
- $(OBJS) : $(HDRS)
-
- libglut.a : $(OBJS)
- $(RM) $@
- $(AR) crl $@ $(OBJS)
-
- .ORDER : strokegen.h strokegen.c
-
- strokegen.h strokegen.c : strokegen.y
- $(YACC) -d strokegen.y
- $(MV) y.tab.c strokegen.c
- $(MV) y.tab.h strokegen.h
-
- # avoid warnings when compiling lex generated code
- strokegen.o : strokegen.c
- $(CC) $(CFLAGS) -woff 726,825,635,818,819,820,824,831,835,822,821,1167,1498,1116,1136,1174,1196,803 -c -MDupdate Makedepend strokegen.c
-
- strokelex.c : strokelex.l
- $(LEX) strokelex.l
- $(MV) lex.yy.c strokelex.c
-
- # avoid warnings when compiling lex generated code
- strokelex.o : strokelex.c
- $(CC) $(CFLAGS) -woff 831,825,817,835,702,819,635,824,822,1167,1498,1110,1196,1174,803 -c -MDupdate Makedepend strokelex.c
-
- strokegen : strokegen.o strokelex.o
- $(CC) -o $@ $(LDFLAGS) strokegen.o strokelex.o -ll
-
- capturexfont : capturexfont.o
- $(CC) -o $@ $(LDFLAGS) capturexfont.o -lX11
-
- # glut_roman.c and glut_mroman.c are now checked in, but here are rules to generate them
- glut_roman.c.gen : Roman.stroke strokegen
- ./strokegen -s glutStrokeRoman < Roman.stroke > $@
- glut_mroman.c.gen : MonoRoman.stroke strokegen
- ./strokegen -s glutStrokeMonoRoman < MonoRoman.stroke > $@
-
- glutsrc.ps : $(SRCS)
- $(RM) hardcopy
- mkdir -p hardcopy
- for i in $(SRCS) ;\
- do \
- grep -v CENTRY $$i | grep -v INDENT- > hardcopy/$$i; \
- done
- cd hardcopy ; enscript -p ../$@ -G -2r `echo $(SRCS) | fmt -1 | sort`
- $(RM) hardcopy
-
- # The bitmap files can be generated using capturexfont, but because
- # they require a connection to an X server and potentially different
- # X servers have different fonts, these generated files are part
- # of the GLUT distribution.
-
- 9_BY_15 = -misc-fixed-medium-r-normal--15-140-75-75-C-90-iso8859-1
- 8_BY_13 = -misc-fixed-medium-r-normal--13-120-75-75-C-80-iso8859-1
- TR10 = -adobe-times-medium-r-normal--10-100-75-75-p-54-iso8859-1
- TR24 = -adobe-times-medium-r-normal--24-240-75-75-p-124-iso8859-1
- HEL10 = -adobe-helvetica-medium-r-normal--10-100-75-75-p-56-iso8859-1
- HEL12 = -adobe-helvetica-medium-r-normal--12-120-75-75-p-67-iso8859-1
- HEL18 = -adobe-helvetica-medium-r-normal--18-180-75-75-p-98-iso8859-1
-
- semigens : capturexfont
- ./capturexfont $(9_BY_15) glutBitmap9By15 > glut_9x15.c.gen
- ./capturexfont $(8_BY_13) glutBitmap8By13 > glut_8x13.c.gen
- ./capturexfont $(TR10) glutBitmapTimesRoman10 > glut_tr10.c.gen
- ./capturexfont $(TR24) glutBitmapTimesRoman24 > glut_tr24.c.gen
- ./capturexfont $(HEL10) glutBitmapHelvetica10 > glut_hel10.c.gen
- ./capturexfont $(HEL12) glutBitmapHelvetica12 > glut_hel12.c.gen
- ./capturexfont $(HEL18) glutBitmapHelvetica18 > glut_hel18.c.gen
-
- # unused test rule for test building 16-bit font
- JIS = -jis-fixed-medium-r-normal--24-230-75-75-c-240-jisx0208.1983-0
- glut_jis.c :
- ./capturexfont $(JIS) glutBitmapJis > $@
-
- sources: $(SRCS)
-
- symcheck: libglut.a
- -nm -Bo libglut.a | grep -v ' d ' | grep -v ' T glut' | grep -v ' D glut' | grep -v ' U ' | grep -v ' T __glut' | grep -v ' t ' | grep -v ' b ' | grep -v ' D __glut' | grep -v ' B __glut'
-
- dstr.c: glut_dstr.c
- ln -s glut_dstr.c $@
-
- dstr: dstr.c glut_util.o glut_glxext.o
- $(RM) $@
- $(CC) -g -o $@ $(CFLAGS) -DTEST dstr.c glut_util.o glut_glxext.o -lGLU -lGL -lXext -lX11 -lm
-
- ./glut.h : glut.h
- ./glutint.h : glutint.h
- ./glutstroke.h : glutstroke.h
- ./strokegen.h : strokegen.h
- ./stroke.h : stroke.h
- ./layerutil.h : layerutil.h
- strokelex.o: strokelex.c strokegen.h
-
- include $(COMMONRULES)
-